package com.csea;

/**
 * 函数式接口
 * 就是Java类型系统中的接口
 * 只是包含一个接口方法的特殊接口
 * 语义化检测注解：@FunctionalInterface
 * Lambda也只能操作一个方法
 * Lambda核心就是一个函数式接口的实现
 *
 * @author Csea
 * @title
 * @date 2019/12/11 19:46
 */
@FunctionalInterface
public interface IMessageFormat {
    /**
     * 消息转换方法
     *
     * @param message
     * @param format
     * @return
     */
    String format(String message, String format);


    static boolean verifyMessage(String msg) {
        if (msg != null) {
            return true;
        } else {
            return false;
        }
    }

    // 函数式接口都是继承自Object的方法，如果自己定义方法语法语义是不会通过的，如果是Object集成过来的方法，那是可以通过的
    // 这是一个比较特殊的地方
//    boolean test();

    @Override
    String toString();


}
